/**
 * Copyright 2012-2013 Brin.com
 * All rights reserved.
 * 
 * @project
 * @author Brin
 * @version 1.0
 * @data 2011-05-01
 */
package com.brin.core.util;

import org.springframework.web.util.HtmlUtils;
/**
 * Web项目经常会遇到Escape Html的情况，常用的有
 * org.apache.commons.lang.StringEscapeUtils 和 org.springframework.web.util.HtmlUtils
 * Spring的HtmlUtils相比StringEscapeUtils的优点是，他只转换html字符，不转换汉字等文字。
 * 
 * @author Brin
 *
 */
public class EscapeUtil extends HtmlUtils {

	/**
	 * 对JS中可能引起问题的特殊字符串做JS转义
	 * @param str
	 * @return
	 */
	public static String escapeJavaScript(String str) {
		String tempStr = JSONUtil.escapeValue(str);
		
		return StringUtil.replace(tempStr, "</script>", "<\\/script>");
	}
	
	/**
	 * 对html标签过行过滤，返回内容
	 * @param str
	 * @return
	 */
	public static String escapeHtmlContent(String str) {
		
		if (StringUtil.isBlank(str)) return null;
		
		return str.replaceAll("<[^>]*>", "").replaceAll(" ","").replace("\r", "").replace("\n", "").replace("\t","").replaceAll("&nbsp;", " ");
	}
}
